#ifndef __CHANNEL_HPP__
#define __CHANNEL_HPP__

#include <iostream>
#include <string>
#include <unistd.h>
using namespace std;   

#endif

//先描述再组织
class Channel
{
public:
    //构造函数
    Channel(int wfd,pid_t who):_wfd(wfd),_who(who)
    {
        _name="Channel-"+to_string(wfd)+'-'+to_string(who);
    }
    //获取名字
    string Name()
    {
        return _name;
    }
    void Send(int cmd)
    {
        write(_wfd,&cmd,sizeof(cmd));
    }
    void Close()
    {
        close(_wfd);
    }
    pid_t Id()
    {
        return _who;
    }
    //析构函数
    ~Channel()
    {}
private:
    int _wfd;//master的写端
    string _name;//对应worker的名字
    pid_t _who;//记录哪个子进程的管道
};